﻿<%@ Page Title="Registrar Beneficiario" Language="C#" MasterPageFile="~/Site.Master" AutoEventWireup="true" CodeBehind="Registrar.aspx.cs" Inherits="Triunfadores.Web.Clientes.Registrar" %>
<asp:Content ID="Content1" ContentPlaceHolderID="HeadContent" runat="server">
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="FeaturedContent" runat="server">
</asp:Content>
<asp:Content ID="Content3" ContentPlaceHolderID="MainContent" runat="server">
    
    <div class="box-body">
        <asp:FormView
            CssClass="col-xs-12"
            DefaultMode="Insert"
            ID="fvBeneficiario"
            ItemType="Triunfadores.BusinessEntities.Beneficiario"
            runat="server"
            InsertMethod="RegistrarBeneficiario"
            UpdateMethod="UpdateBeneficiario"
            SelectMethod="GetBeneficiarioByrId">
            <InsertItemTemplate>
                <div class="box box-primary">
                    <div class="box-header with-border">
                        <h3 class="box-title">Datos de Beneficiario</h3>
                    </div>
                    <div class="box-body">
                        <div class="form-horizontal">
                            <div class="form-group">
                                <div class="col-sm-4">
                                    <asp:TextBox CssClass="form-control" ID="tbxIdBeneficiario" runat="server" Text="<%#BindItem.Id %>" Visible="False" />
                                </div>
                            </div>
                            <div class="form-group">
                                <label class="col-sm-2 control-label">Nombres *</label>
                                <div class="col-sm-5">
                                    <asp:TextBox CssClass="form-control" ID="tbxNombBeneficiario" runat="server" Text="<%#BindItem.Nombres %>" MaxLength="50" />
                                    <asp:RequiredFieldValidator Display="Dynamic"
                                        ID="rfvNomEvento" runat="server" ControlToValidate="tbxNombBeneficiario" ErrorMessage=" Campo Necesario" ForeColor="Red"></asp:RequiredFieldValidator>
                                    <ajaxToolkit:FilteredTextBoxExtender ID="FilteredTextBoxExtender2" TargetControlID="tbxNombBeneficiario"
                                        FilterType="LowercaseLetters, UppercaseLetters,Custom" ValidChars=" " runat="server"></ajaxToolkit:FilteredTextBoxExtender>
                                </div>
                            </div>
                            <div class="form-group">
                                <label class="col-sm-2 control-label">Apellidos *</label>
                                <div class="col-sm-5">
                                    <asp:TextBox CssClass="form-control" ID="tbxApellBeneficiario" runat="server" Text="<%#BindItem.Apellidos %>" MaxLength="50" />
                                    <asp:RequiredFieldValidator Display="Dynamic"
                                        ID="RequiredFieldValidator1" runat="server" ControlToValidate="tbxApellBeneficiario" ErrorMessage=" Campo Necesario" ForeColor="Red"></asp:RequiredFieldValidator>
                                    <ajaxToolkit:FilteredTextBoxExtender ID="FilteredTextBoxExtender5" TargetControlID="tbxApellBeneficiario"
                                        FilterType="LowercaseLetters, UppercaseLetters,Custom" ValidChars=" " runat="server"></ajaxToolkit:FilteredTextBoxExtender>
                                </div>
                            </div>
                            <div class="form-group">
                                <label class="col-sm-2 control-label">Dni *</label>
                                <div class="col-sm-5">
                                    <asp:TextBox CssClass="form-control" ID="tbxDniBeneficiario" MaxLength="8" runat="server" Text="<%#BindItem.Dni %>" />
                                    <asp:CompareValidator ID="CompareValidator1" Display="Dynamic" ErrorMessage="El DNI no puede ser este valor."
                                        ControlToValidate="tbxDniBeneficiario" Operator="NotEqual" runat="server"
                                        Type="Integer" ValueToCompare="00000000" ForeColor="Red" />
                                    <asp:RegularExpressionValidator ID="RegularExpressionValidator2"
                                        Display="Dynamic"
                                        ErrorMessage="El dni debe tener ocho números" ForeColor="Red"
                                        ControlToValidate="tbxDniBeneficiario" ValidationExpression="[\S\s]{8,8}" runat="server" />
                                    <asp:RequiredFieldValidator Display="Dynamic"
                                        ID="RequiredFieldValidator3" runat="server" ControlToValidate="tbxDniBeneficiario" ErrorMessage=" Campo Necesario" ForeColor="Red"></asp:RequiredFieldValidator>
                                    <ajaxToolkit:FilteredTextBoxExtender ID="FilteredTextBoxExtender1" TargetControlID="tbxDniBeneficiario" FilterType="Numbers" runat="server"></ajaxToolkit:FilteredTextBoxExtender>
                                </div>
                            </div>
                            <div class="form-group">
                                <label class="col-sm-2 control-label">Dirección *</label>
                                <div class="col-sm-5">
                                    <asp:TextBox CssClass="form-control" ID="tbxDirecBeneficiario" runat="server" Text="<%#BindItem.Direccion %>" MaxLength="50" />
                                    <asp:RequiredFieldValidator Display="Dynamic"
                                        ID="RequiredFieldValidator2" runat="server" ControlToValidate="tbxDirecBeneficiario" ErrorMessage=" Campo Necesario" ForeColor="Red"></asp:RequiredFieldValidator>
                                </div>
                            </div>
                            <div class="form-group">
                                <label class="col-sm-2 control-label">Lugar *</label>
                                <div class="col-sm-5">
                                    <asp:DropDownList
                                        CssClass="form-control"
                                        ID="ddlLugar"
                                        ItemType="Triunfadores.BusinessEntities.Ubigeo"
                                        DataTextField="NombreCompleto"
                                        DataValueField="Id"
                                        SelectedValue='<%#BindItem.IdLugarDireccion %>'
                                        runat="server"
                                        SelectMethod="GetUbigeos" />
                                    <asp:CustomValidator Display="Dynamic" ErrorMessage="Selecciona el lugar" ForeColor="Red"
                                        ControlToValidate="ddlLugar" ClientValidationFunction="ValidaDDL" ID="cvLugar"
                                        runat="server" />
                                </div>
                            </div>
                            
                            <div class="form-group">
                                <label class="col-sm-2 control-label">Email *</label>
                                <div class="col-sm-5">
                                    <asp:TextBox CssClass="form-control" ID="tbxEmailBeneficiario" runat="server" Text="<%#BindItem.Email %>" />
                                    <asp:RequiredFieldValidator Display="Dynamic"
                                        ID="RequiredFieldValidator4" runat="server" ControlToValidate="tbxEmailBeneficiario" ErrorMessage=" Campo Necesario" ForeColor="Red"></asp:RequiredFieldValidator>
                                    <asp:RegularExpressionValidator ID="regexEmail"
                                        Display="Dynamic"
                                        ValidationExpression="^(([A-Za-z0-9]+_+)|([A-Za-z0-9]+\-+)|([A-Za-z0-9]+\.+)|([A-Za-z0-9]+\++))*[A-Za-z0-9]+@((\w+\-+)|(\w+\.))*\w{1,63}\.[a-zA-Z]{2,6}$"
                                        runat="server" ErrorMessage="Por favor ingresa un email valido" ControlToValidate="tbxEmailBeneficiario" ForeColor="Red" />
                                </div>
                            </div>
                            <div class="form-group">
                                <label class="col-sm-2 control-label">Teléfono *</label>
                                <div class="col-sm-5">
                                    <asp:TextBox CssClass="form-control" ID="tbxTelefBeneficiario" MaxLength="9" runat="server" Text="<%#BindItem.Telefono %>" TextMode="Phone" />
                                    <asp:CompareValidator ID="CompareValidator2" Display="Dynamic" ErrorMessage="El teléfono no puede ser este valor."
                                        ControlToValidate="tbxTelefBeneficiario" Operator="NotEqual" runat="server"
                                        Type="Integer" ValueToCompare="000000000" ForeColor="Red" />
                                    <asp:RegularExpressionValidator ID="RegularExpressionValidator1"
                                        Display="Dynamic"
                                        ErrorMessage="El nro de telefono debe tener nueve dígitos" ForeColor="Red"
                                        ControlToValidate="tbxTelefBeneficiario" ValidationExpression="[\S\s]{9,9}" runat="server" />
                                    <asp:RequiredFieldValidator Display="Dynamic"
                                        ID="RequiredFieldValidator5" runat="server" ControlToValidate="tbxTelefBeneficiario" ErrorMessage=" Campo Necesario" ForeColor="Red"></asp:RequiredFieldValidator>
                                    <ajaxToolkit:FilteredTextBoxExtender ID="FilteredTextBoxExtender8" TargetControlID="tbxTelefBeneficiario"
                                        FilterType="Numbers" runat="server"></ajaxToolkit:FilteredTextBoxExtender>
                                </div>
                            </div>
                        </div>
                    </div>
                    <div class="box-footer">
                        <div class="pull-right">
                            <a class="btn btn-default" href="/Default.aspx"
                                onclick='return confirm("¿Esta seguro que desea salir? Los datos se perderan");'>Salir</a>
                            <asp:Button ID="btnGuardar" class="btn btn-primary" CommandName="insert" Text="Guardar" runat="server" />
                        </div>
                    </div>
                </div>
            </InsertItemTemplate>
            <EditItemTemplate>
                <div class="box box-primary">
                    <div class="box-header with-border">
                        <h3 class="box-title">Modificar Datos de Beneficiario</h3>
                    </div>
                    <div class="box-body">
                        <div class="form-horizontal">
                            <div class="form-group">
                                <div class="col-sm-4">
                                    <asp:TextBox CssClass="form-control" ID="tbxIdBeneficiario" runat="server" Text="<%#BindItem.Id %>" Visible="False" />
                                </div>
                            </div>
                            <div class="form-group">
                                <label class="col-sm-2 control-label">Nombres *</label>
                                <div class="col-sm-5">
                                    <asp:TextBox CssClass="form-control" ID="tbxNombBeneficiario" runat="server" Text="<%#BindItem.Nombres %>" MaxLength="50" />
                                    <asp:RequiredFieldValidator Display="Dynamic"
                                        ID="rfvNomEvento" runat="server" ControlToValidate="tbxNombBeneficiario" ErrorMessage=" Campo Necesario" ForeColor="Red"></asp:RequiredFieldValidator>
                                    <ajaxToolkit:FilteredTextBoxExtender ID="FilteredTextBoxExtender2" TargetControlID="tbxNombBeneficiario"
                                        FilterType="LowercaseLetters, UppercaseLetters,Custom" ValidChars=" " runat="server"></ajaxToolkit:FilteredTextBoxExtender>
                                </div>
                            </div>
                            <div class="form-group">
                                <label class="col-sm-2 control-label">Apellidos *</label>
                                <div class="col-sm-5">
                                    <asp:TextBox CssClass="form-control" ID="tbxApellBeneficiario" runat="server" Text="<%#BindItem.Apellidos %>" MaxLength="50" />
                                    <asp:RequiredFieldValidator Display="Dynamic"
                                        ID="RequiredFieldValidator1" runat="server" ControlToValidate="tbxApellBeneficiario" ErrorMessage=" Campo Necesario" ForeColor="Red"></asp:RequiredFieldValidator>
                                    <ajaxToolkit:FilteredTextBoxExtender ID="FilteredTextBoxExtender5" TargetControlID="tbxApellBeneficiario"
                                        FilterType="LowercaseLetters, UppercaseLetters,Custom" ValidChars=" " runat="server"></ajaxToolkit:FilteredTextBoxExtender>
                                </div>
                            </div>
                            <div class="form-group">
                                <label class="col-sm-2 control-label">Dni *</label>
                                <div class="col-sm-5">
                                    <asp:TextBox CssClass="form-control" ID="tbxDniBeneficiario" MaxLength="8" runat="server" Text="<%#BindItem.Dni %>" />
                                    <asp:CompareValidator ID="CompareValidator1" Display="Dynamic" ErrorMessage="El DNI no puede ser este valor."
                                        ControlToValidate="tbxDniBeneficiario" Operator="NotEqual" runat="server"
                                        Type="Integer" ValueToCompare="00000000" ForeColor="Red" />
                                    <asp:RegularExpressionValidator ID="RegularExpressionValidator2"
                                        Display="Dynamic"
                                        ErrorMessage="El dni debe tener ocho números" ForeColor="Red"
                                        ControlToValidate="tbxDniBeneficiario" ValidationExpression="[\S\s]{8,8}" runat="server" />
                                    <asp:RequiredFieldValidator Display="Dynamic"
                                        ID="RequiredFieldValidator3" runat="server" ControlToValidate="tbxDniBeneficiario" ErrorMessage=" Campo Necesario" ForeColor="Red"></asp:RequiredFieldValidator>
                                    <ajaxToolkit:FilteredTextBoxExtender ID="FilteredTextBoxExtender1" TargetControlID="tbxDniBeneficiario" FilterType="Numbers" runat="server"></ajaxToolkit:FilteredTextBoxExtender>
                                </div>
                            </div>
                            <div class="form-group">
                                <label class="col-sm-2 control-label">Dirección *</label>
                                <div class="col-sm-5">
                                    <asp:TextBox CssClass="form-control" ID="tbxDirecBeneficiario" runat="server" Text="<%#BindItem.Direccion %>" MaxLength="50" />
                                    <asp:RequiredFieldValidator Display="Dynamic"
                                        ID="RequiredFieldValidator2" runat="server" ControlToValidate="tbxDirecBeneficiario" ErrorMessage=" Campo Necesario" ForeColor="Red"></asp:RequiredFieldValidator>
                                </div>
                            </div>
                            <div class="form-group">
                                <label class="col-sm-2 control-label">Lugar *</label>
                                <div class="col-sm-5">
                                    <asp:DropDownList
                                        CssClass="form-control"
                                        ID="ddlLugar"
                                        ItemType="Triunfadores.BusinessEntities.Ubigeo"
                                        DataTextField="NombreCompleto"
                                        DataValueField="Id"
                                        SelectedValue='<%#BindItem.IdLugarDireccion %>'
                                        runat="server"
                                        SelectMethod="GetUbigeos" />
                                    <asp:CustomValidator Display="Dynamic" ErrorMessage="Selecciona el lugar" ForeColor="Red"
                                        ControlToValidate="ddlLugar" ClientValidationFunction="ValidaDDL" ID="cvLugar"
                                        runat="server" />
                                </div>
                            </div>
                            
                            <div class="form-group">
                                <label class="col-sm-2 control-label">Email *</label>
                                <div class="col-sm-5">
                                    <asp:TextBox CssClass="form-control" ID="tbxEmailBeneficiario" runat="server" Text="<%#BindItem.Email %>" />
                                    <asp:RequiredFieldValidator Display="Dynamic"
                                        ID="RequiredFieldValidator4" runat="server" ControlToValidate="tbxEmailBeneficiario" ErrorMessage=" Campo Necesario" ForeColor="Red"></asp:RequiredFieldValidator>
                                    <asp:RegularExpressionValidator ID="regexEmail"
                                        Display="Dynamic"
                                        ValidationExpression="^(([A-Za-z0-9]+_+)|([A-Za-z0-9]+\-+)|([A-Za-z0-9]+\.+)|([A-Za-z0-9]+\++))*[A-Za-z0-9]+@((\w+\-+)|(\w+\.))*\w{1,63}\.[a-zA-Z]{2,6}$"
                                        runat="server" ErrorMessage="Por favor ingresa un email valido" ControlToValidate="tbxEmailBeneficiario" ForeColor="Red" />
                                </div>
                            </div>
                            <div class="form-group">
                                <label class="col-sm-2 control-label">Teléfono *</label>
                                <div class="col-sm-5">
                                    <asp:TextBox CssClass="form-control" ID="tbxTelefBeneficiario" MaxLength="9" runat="server" Text="<%#BindItem.Telefono %>" TextMode="Phone" />
                                    <asp:CompareValidator ID="CompareValidator2" Display="Dynamic" ErrorMessage="El teléfono no puede ser este valor."
                                        ControlToValidate="tbxTelefBeneficiario" Operator="NotEqual" runat="server"
                                        Type="Integer" ValueToCompare="000000000" ForeColor="Red" />
                                    <asp:RegularExpressionValidator ID="RegularExpressionValidator1"
                                        Display="Dynamic"
                                        ErrorMessage="El nro de telefono debe tener nueve dígitos" ForeColor="Red"
                                        ControlToValidate="tbxTelefBeneficiario" ValidationExpression="[\S\s]{9,9}" runat="server" />
                                    <asp:RequiredFieldValidator Display="Dynamic"
                                        ID="RequiredFieldValidator5" runat="server" ControlToValidate="tbxTelefBeneficiario" ErrorMessage=" Campo Necesario" ForeColor="Red"></asp:RequiredFieldValidator>
                                    <ajaxToolkit:FilteredTextBoxExtender ID="FilteredTextBoxExtender8" TargetControlID="tbxTelefBeneficiario"
                                        FilterType="Numbers" runat="server"></ajaxToolkit:FilteredTextBoxExtender>
                                </div>
                            </div>
                        </div>
                    </div>
                    <div class="box-footer">
                        <div class="pull-right">
                            <a class="btn btn-default" href="/Default.aspx"
                                onclick='return confirm("¿Esta seguro que desea salir? Los datos se perderan");'>Salir</a>
                            <asp:Button ID="btnGuardar" class="btn btn-primary" CommandName="update" Text="Guardar" runat="server" />
                        </div>
                    </div>
                </div>
            </EditItemTemplate>
        </asp:FormView>
    </div>
    
    <%-- Validacion para que los combos tengan un campo seleccionado --%>
    <script type="text/javascript">

        function ValidaDDL(source, arguments) {
            if (arguments.Value < 1) {
                arguments.IsValid = false;
            }
            else {
                arguments.IsValid = true;
            }
        }

    </script>

</asp:Content>
